package com.ruoyi.common.core.domain.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.Date;

/**
 * 水质对象 usv_boat_status
 *
 * @author lwq
 * @date 2021-07-02
 */
@Data
@ApiModel("水质模型")
@Builder
@NoArgsConstructor
@AllArgsConstructor
@TableName(value = "sys_boat_water")
public class SysBoatWater extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * ID
     */
    @ApiModelProperty(value = "ID")
    @TableId(type = IdType.AUTO)
    private long id;

    /**
     * 航船编号
     */
    @Excel(name = "航船编号")
    @ApiModelProperty(value = "航船编号")
    private String boatSn;

    /**
     * 任务ID
     */
    @Excel(name = "任务ID")
    @ApiModelProperty(value = "任务ID-关联sys-task表主键id")
    private long taskId;

    /**
     * 无人船ID
     */
    @Excel(name = "无人船ID")
    @ApiModelProperty(value = "无人船ID-关联sys-device_info表主键id")
    private long deviceId;

    /**
     * 温度
     */
    @Excel(name = "温度")
    @ApiModelProperty(value = "温度")
    private float temp;

    /**
     * 电导率
     */
    @Excel(name = "电导率")
    @ApiModelProperty(value = "电导率")
    private float elec;

    /**
     * PH
     */
    @TableField(value = "ph")
    @Excel(name = "PH")
    @ApiModelProperty(value = "PH")
    private float PH;

    /**
     * COD
     */
    @TableField(value = "cod")
    @Excel(name = "COD")
    @ApiModelProperty(value = "COD")
    private float COD;

    /**
     * 溶解氧
     */
    @TableField(value = "d0")
    @Excel(name = "溶解氧")
    @ApiModelProperty(value = "溶解氧")
    private float D0;

    /**
     * 氨氮值
     */
    @TableField(value = "nh4")
    @Excel(name = "氨氮值")
    @ApiModelProperty(value = "氨氮值")
    private float NH4;

    /**
     * 浊度
     */
    @TableField(value = "ts")
    @Excel(name = "浊度")
    @ApiModelProperty(value = "浊度")
    private float TS;

    /**
     * 记录时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "记录时间", width = 30, dateFormat = "yyyy-MM-dd")
    @ApiModelProperty(value = "记录时间")
    private Date time;

    @Excel(name = "组合船ID")
    @ApiModelProperty(value = "组合船ID")
    private Integer cruiseId;

    @Excel(name = "等级")
    @ApiModelProperty(value = "等级")
    private Integer level;

    @Excel(name = "经度")
    @ApiModelProperty(value = "经度")
    private Double longitude;

    @Excel(name = "纬度")
    @ApiModelProperty(value = "纬度")
    private Double latitude;

    @TableField(exist = false)
    @ApiModelProperty(value = "开始时间 格式yyyy-MM-dd HH:mm:ss")
    private Date startTime;

    @TableField(exist = false)
    @ApiModelProperty(value = "结束时间 格式yyyy-MM-dd HH:mm:ss")
    private Date endTime;
}
